module Reserva (Reserva, nuevaR, documentoR, fechaDesdeR, fechaHastaR, tipoR, confirmadaR, confirmarR) where

import Tipos

data Reserva = Res DNI Fecha Fecha TipoHabitacion Bool deriving (Show, Eq)

nuevaR :: DNI -> Fecha -> Fecha -> TipoHabitacion -> Reserva
nuevaR d fe fs t = Res d fe fs t False

documentoR :: Reserva -> DNI
documentoR (Res d _ _ _ _) = d

fechaDesdeR :: Reserva -> Fecha
fechaDesdeR (Res _ f _ _ _) = f

fechaHastaR :: Reserva -> Fecha
fechaHastaR (Res _ _ f _ _) = f

tipoR :: Reserva -> TipoHabitacion
tipoR (Res _ _ _ t _) = t

confirmadaR :: Reserva -> Bool
confirmadaR (Res _ _ _ _ c) = c

confirmarR :: Reserva -> Reserva
confirmarR r = Res (documentoR r) (fechaDesdeR r) (fechaHastaR r) (tipoR r) True
